import axios from 'axios';

export const fetchAlphaData = async (stockCode) => {
  try {
    const response = await axios.post('/api/alpha/cal_alpha', { 
      stock: stockCode 
    });

    // 根据后端返回的 code 判断是否成功（0 表示成功，非 0 表示失败）
    if (response.data.code !== 0) {
      // 直接抛出后端返回的错误消息
      throw new Error(response.data.message || '请求失败');
    }

    // 返回格式化后的数据
    return {
      image: response.data.data.image,
      stockCode: response.data.data.stock_code,
      timestamp: response.data.data.timestamp || new Date().toISOString() // 如果后端未返回时间戳，使用当前时间
    };

  } catch (error) {
    // 统一捕获网络错误或业务错误
    console.error('请求 Alpha 数据失败:', error.message);
    throw error; // 抛出错误由调用方处理（例如在 React 组件中显示错误提示）
  }
};